package cn.nexd.map.rendering.core.componet.data;

import android.graphics.Path;

import java.util.List;

/**
 * Created by codingfish on 15/7/21.
 */
public class Feature {
    private long feature_id;//区域ID
    private int shape_id;//形状ID
    private int type_id;//类型ID
    private String name;//名称
    private String url;//URL
    private float center_x;//中心点X
    private float center_y;//中心点Y
    private List<Node> nodes;//顶点
    private int fillColor;//填充颜色
    private String fillRule;//填充规则

    private int strokeColor;// 边框颜色
    private float strokeWidth;//边框宽度
    private float strokeMiterLimit;

    private int spaceType;//联想 POI 类型

    private float maxX;
    private float maxY;
    private float minX;

    private String spaceTypeString;

    public float getMinY() {
        return minY;
    }

    public void setMinY(float minY) {
        this.minY = minY;
    }

    public float getMaxX() {
        return maxX;
    }

    public void setMaxX(float maxX) {
        this.maxX = maxX;
    }

    public float getMaxY() {
        return maxY;
    }

    public void setMaxY(float maxY) {
        this.maxY = maxY;
    }

    public float getMinX() {
        return minX;
    }

    public void setMinX(float minX) {
        this.minX = minX;
    }

    private float minY;

    private float maxWidth;

    private float maxHeight;

    public String getFillRule() {
        return fillRule;
    }

    public void setFillRule(String fillRule) {
        this.fillRule = fillRule;
    }

    public int getFillColor() {
        return fillColor;
    }

    public void setFillColor(int fillColor) {
        this.fillColor = fillColor;
    }

    public int getStrokeColor() {
        return strokeColor;
    }

    public void setStrokeColor(int strokeColor) {
        this.strokeColor = strokeColor;
    }

    public float getStrokeWidth() {
        return strokeWidth;
    }

    public void setStrokeWidth(float strokeWidth) {
        this.strokeWidth = strokeWidth;
    }

    public float getStrokeMiterLimit() {
        return strokeMiterLimit;
    }

    public void setStrokeMiterLimit(float strokeMiterLimit) {
        this.strokeMiterLimit = strokeMiterLimit;
    }


    public Feature() {
    }

    public Path getPath() {
        return path;
    }

    public void setPath(Path path) {
        this.path = path;
    }

    private Path path;

    public long getFeature_id() {
        return feature_id;
    }

    public void setFeature_id(long feature_id) {
        this.feature_id = feature_id;
    }

    public int getShape_id() {
        return shape_id;
    }

    public void setShape_id(int shape_id) {
        this.shape_id = shape_id;
    }

    public int getType_id() {
        return type_id;
    }

    public void setType_id(int type_id) {
        this.type_id = type_id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getUrl() {
        return url;
    }

    public void setUrl(String url) {
        this.url = url;
    }

    public float getCenter_x() {
        return center_x;
    }

    public void setCenter_x(float center_x) {
        this.center_x = center_x;
    }

    public float getCenter_y() {
        return center_y;
    }

    public void setCenter_y(float center_y) {
        this.center_y = center_y;
    }

    public List<Node> getNodes() {
        return nodes;
    }

    public void setNodes(List<Node> nodes) {
        this.nodes = nodes;
    }

    @Override
    public String toString() {

        String s = "\nname == " + name + "\ncenter_x == " + center_x + " \ncenter_y == " + center_y
                + "\nID == " + feature_id;

        return s;
    }

    public float getMaxWidth() {
        return maxWidth;
    }

    public void setMaxWidth(float maxWidth) {
        this.maxWidth = maxWidth;
    }

    public float getMaxHeight() {
        return maxHeight;
    }

    public void setMaxHeight(float maxHeight) {
        this.maxHeight = maxHeight;
    }

    public int getSpaceType() {
        return spaceType;
    }

    public void setSpaceType(int spaceType) {
        this.spaceType = spaceType;
    }

    public String getSpaceTypeString() {
        return spaceTypeString;
    }

    public void setSpaceTypeString(String spaceTypeString) {
        this.spaceTypeString = spaceTypeString;
    }
}
